#pragma once
#include "DXAMLCommon.h"
#include "XamlQualifiedObject.h"


class CompressedObjectWriterStack
{
private: 
	xshared_ptr<XamlQualifiedObject> m_qoTargetType;
	xshared_ptr<XamlQualifiedObject> m_qoResources;
public: 
	enum eCompressedStackCacheHint
	{
		cschNone = 0x0,
		cschTargetType = 0x1,
		cschResources = 0x2
	};

	const xshared_ptr<XamlQualifiedObject> & get_TargetType();
	void set_TargetType(const xshared_ptr<XamlQualifiedObject> & qoTargetType);
	const xshared_ptr<XamlQualifiedObject> & get_Resources() const;
	void set_Resources(const xshared_ptr<XamlQualifiedObject> & qoResources);
	HRESULT get_CachedItem(enum CompressedObjectWriterStack::eCompressedStackCacheHint, xshared_ptr<XamlQualifiedObject> &);
};



